package com.hzf.ucenter.dao.model;

import java.io.Serializable;
import java.util.List;

public class UcenterUser implements Serializable {
    /**
     * 商品表ID（自增）
     *
     * @mbg.generated
     */
    private Integer id;

    /**
     * 根据历史所有用户计算得出或者自增长得出数字号码
     *
     * @mbg.generated
     */
    private String userNumber;

    /**
     * 用户名,用户手动填写
     *
     * @mbg.generated
     */
    private String userName;

    /**
     * 密码,后台密码（加密）
     *
     * @mbg.generated
     */
    private String password;

    /**
     * 用户绑定/允许为空
     *
     * @mbg.generated
     */
    private long phone;

    /**
     * 是否允许登陆
     *
     * @mbg.generated
     */
    private Integer loginStatus;

    /**
     * 用户等级：基础用户没有等级之分。设计师工长默认为3
     *
     * @mbg.generated
     */
    private Integer userGade;

    /**
     * 用户最近操作时执行
     *
     * @mbg.generated
     */
    private Long updateTime;

    /**
     * 用户创建账号时自动生成
     *
     * @mbg.generated
     */
    private Long createDate;

    /**
     * 关联第三方表ID
     *
     * @mbg.generated
     */
    private Integer userThirdId;

    /**
     * 区别用户类型，是虚拟还是真实
     *
     * @mbg.generated
     */
    private Integer userStatus;

    /**
     * 性别
     *
     * @mbg.generated
     */
    private String sex;

    /**
     * 年龄
     *
     * @mbg.generated
     */
    private Integer age;

    /**
     * 用户头像
     *
     * @mbg.generated
     */
    private String userHead;

    /**
     * 姓名
     *
     * @mbg.generated
     */
    private String nickName;

    private Integer authInfoId;

    private Integer authInfo;

    private List<UcenterAuthInfo>  ucenterAuthInfos;

    private List<UcenterUserCity> ucenterUserCities;

    private int regionId;
    private int regionNumber;
    private String regionName;

    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserNumber() {
        return userNumber;
    }

    public void setUserNumber(String userNumber) {
        this.userNumber = userNumber;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public long getPhone() {
        return phone;
    }

    public void setPhone(long phone) {
        this.phone = phone;
    }



    public Integer getLoginStatus() {
        return loginStatus;
    }

    public void setLoginStatus(Integer loginStatus) {
        this.loginStatus = loginStatus;
    }

    public Integer getUserGade() {
        return userGade;
    }

    public void setUserGade(Integer userGade) {
        this.userGade = userGade;
    }

    public Long getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Long updateTime) {
        this.updateTime = updateTime;
    }

    public Long getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Long createDate) {
        this.createDate = createDate;
    }

    public Integer getUserThirdId() {
        return userThirdId;
    }

    public void setUserThirdId(Integer userThirdId) {
        this.userThirdId = userThirdId;
    }

    public Integer getUserStatus() {
        return userStatus;
    }

    public void setUserStatus(Integer userStatus) {
        this.userStatus = userStatus;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getUserHead() {
        return userHead;
    }

    public void setUserHead(String userHead) {
        this.userHead = userHead;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public Integer getAuthInfoId() {
        return authInfoId;
    }

    public void setAuthInfoId(Integer authInfoId) {
        this.authInfoId = authInfoId;
    }

    public Integer getAuthInfo() {
        return authInfo;
    }

    public void setAuthInfo(Integer authInfo) {
        this.authInfo = authInfo;
    }

    public int getRegionId() {
        return regionId;
    }

    public void setRegionId(int regionId) {
        this.regionId = regionId;
    }

    public int getRegionNumber() {
        return regionNumber;
    }

    public void setRegionNumber(int regionNumber) {
        this.regionNumber = regionNumber;
    }

    public String getRegionName() {
        return regionName;
    }

    public void setRegionName(String regionName) {
        this.regionName = regionName;
    }

    public List<UcenterAuthInfo> getUcenterAuthInfos() {
        return ucenterAuthInfos;
    }

    public void setUcenterAuthInfos(List<UcenterAuthInfo> ucenterAuthInfos) {
        this.ucenterAuthInfos = ucenterAuthInfos;
    }

    public List<UcenterUserCity> getUcenterUserCities() {
        return ucenterUserCities;
    }

    public void setUcenterUserCities(List<UcenterUserCity> ucenterUserCities) {
        this.ucenterUserCities = ucenterUserCities;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", userNumber=").append(userNumber);
        sb.append(", userName=").append(userName);
        sb.append(", password=").append(password);
        sb.append(", phone=").append(phone);
        sb.append(", loginStatus=").append(loginStatus);
        sb.append(", userGade=").append(userGade);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", createDate=").append(createDate);
        sb.append(", userThirdId=").append(userThirdId);
        sb.append(", userStatus=").append(userStatus);
        sb.append(", sex=").append(sex);
        sb.append(", age=").append(age);
        sb.append(", userHead=").append(userHead);
        sb.append(", nickName=").append(nickName);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        UcenterUser other = (UcenterUser) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getUserNumber() == null ? other.getUserNumber() == null : this.getUserNumber().equals(other.getUserNumber()))
            && (this.getUserName() == null ? other.getUserName() == null : this.getUserName().equals(other.getUserName()))
            && (this.getPassword() == null ? other.getPassword() == null : this.getPassword().equals(other.getPassword()))
            && (this.getLoginStatus() == null ? other.getLoginStatus() == null : this.getLoginStatus().equals(other.getLoginStatus()))
            && (this.getUserGade() == null ? other.getUserGade() == null : this.getUserGade().equals(other.getUserGade()))
            && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
            && (this.getCreateDate() == null ? other.getCreateDate() == null : this.getCreateDate().equals(other.getCreateDate()))
            && (this.getUserThirdId() == null ? other.getUserThirdId() == null : this.getUserThirdId().equals(other.getUserThirdId()))
            && (this.getUserStatus() == null ? other.getUserStatus() == null : this.getUserStatus().equals(other.getUserStatus()))
            && (this.getSex() == null ? other.getSex() == null : this.getSex().equals(other.getSex()))
            && (this.getAge() == null ? other.getAge() == null : this.getAge().equals(other.getAge()))
            && (this.getUserHead() == null ? other.getUserHead() == null : this.getUserHead().equals(other.getUserHead()))
            && (this.getNickName() == null ? other.getNickName() == null : this.getNickName().equals(other.getNickName()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getUserNumber() == null) ? 0 : getUserNumber().hashCode());
        result = prime * result + ((getUserName() == null) ? 0 : getUserName().hashCode());
        result = prime * result + ((getPassword() == null) ? 0 : getPassword().hashCode());
        result = prime * result + ((getLoginStatus() == null) ? 0 : getLoginStatus().hashCode());
        result = prime * result + ((getUserGade() == null) ? 0 : getUserGade().hashCode());
        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
        result = prime * result + ((getCreateDate() == null) ? 0 : getCreateDate().hashCode());
        result = prime * result + ((getUserThirdId() == null) ? 0 : getUserThirdId().hashCode());
        result = prime * result + ((getUserStatus() == null) ? 0 : getUserStatus().hashCode());
        result = prime * result + ((getSex() == null) ? 0 : getSex().hashCode());
        result = prime * result + ((getAge() == null) ? 0 : getAge().hashCode());
        result = prime * result + ((getUserHead() == null) ? 0 : getUserHead().hashCode());
        result = prime * result + ((getNickName() == null) ? 0 : getNickName().hashCode());
        return result;
    }

}